package com.augurit.gzcgwsp.sendNotice.service;


import java.util.List;
import java.util.Map;
import java.util.ResourceBundle;

import org.springside.modules.orm.Page;

import com.augurit.gzcgwsp.sendNotice.entity.YwSphjInfo;
import com.augurit.wf.bi.web.form.WfBusInstanceTaskForm;



/**
 * 审批环节--实体
 * 
 *
 */
public interface IYwSphjInfoService {
	
	/**
	 * 保存 ywSphjInfo
	 * @param ywSphjInfo 
	 */
	public void saveOrUpdateYwSphjInfo(YwSphjInfo ywSphjInfo);
	
	/**
	 * 获取 ywSphjInfo
	 * @param id 
	 */
	public YwSphjInfo getYwSphjInfo(Long id);
	
	/**
	 * 获取YwSphjInfo实体
	 * @param masterEntityKey  业务id
	 * @param templateCode     业务code
	 * @return
	 */
	public YwSphjInfo getYwSphjInfo(String masterEntityKey,String templateCode);
	
	/**
	 * 获取所有 流水号
	 * @param date 
	 */
	public List<YwSphjInfo> getAll();
	
	public void delete(YwSphjInfo entity);

	public Page<YwSphjInfo> getByMasterEntityKey(Page<YwSphjInfo> ywSphjInfosPage,String masterEntityKey,String templateCode);
	
	/**
	 * 公共方法 ，窗口收案开始，共5个节点（窗口收案--经办人初审--处主管领导审核--委分管领导审核--经办人办结）    数据交换
	 * @param flag						标识，标识是哪个业务的
	 * @param jc						配置的简称(根据interfaceExchange.properties的配置取，如ssgd001,就取ssgd)
	 * @param thisNoteActivityName		这个节点的英文名称
	 * @param nextNoteActivityName		下个节点的英文名称
	 * @param masterEntityKey			案件ID
	 * @param instance
	 * @param loginUserName				登录用户名
	 * @param dpm						部门
	 * @param durationExpression
	 * @param localResource
	 * @param ywRqSsgdSqbForm
	 * @param sprzwdm
	 * @param sprzwmc
	 * @param iswb						是否网办
	 */
	public void commonZwBeginByCksa(int flag, Object obj,String jc,String thisNoteActivityName,String nextNoteActivityName,String masterEntityKey,
			WfBusInstanceTaskForm instance,String loginUserName,String dpm, String durationExpression,
			ResourceBundle localResource, String sprzwdm,String sprzwmc,boolean iswb,Map<String,String> map,String sxbm) throws Exception;
	
	/**
	 * 公共方法 ，经办人初审开始，共5个节点（经办人初审--处主管领导审核--委分管领导审核--XXX--经办人办结）    数据交换
	 * @param flag						标识，标识是哪个业务的
	 * @param jc						配置的简称(根据interfaceExchange.properties的配置取，如ssgd001,就取ssgd)
	 * @param thisNoteActivityName		这个节点的英文名称
	 * @param nextNoteActivityName		下个节点的英文名称
	 * @param masterEntityKey			案件ID
	 * @param instance
	 * @param loginUserName				登录用户名
	 * @param dpm						部门
	 * @param durationExpression
	 * @param localResource
	 * @param ywRqSsgdSqbForm
	 * @param sprzwdm
	 * @param sprzwmc
	 * @param iswb						是否网办
	 */
	public void commonZwBeginByJbrsl(int flag, Object obj, String jc,String thisNoteActivityName,String nextNoteActivityName,String masterEntityKey,
			WfBusInstanceTaskForm instance,String loginUserName,String dpm, String durationExpression,
			ResourceBundle localResource, String sprzwdm,String sprzwmc,boolean iswb,Map<String,String> map);
	
	/**
	 * 公共方法，窗口收案开始，共4个节点（窗口收案--处主管领导审核--委分管领导审核--经办人办结）    数据交换
	 * @param flag						标识，标识是哪个业务的
	 * @param jc						配置的简称(根据interfaceExchange.properties的配置取，如ssgd001,就取ssgd)
	 * @param thisNoteActivityName		这个节点的英文名称
	 * @param nextNoteActivityName		下个节点的英文名称
	 * @param masterEntityKey			案件ID
	 * @param instance
	 * @param loginUserName				登录用户名
	 * @param dpm						部门
	 * @param durationExpression
	 * @param localResource
	 * @param ywRqSsgdSqbForm
	 * @param sprzwdm
	 * @param sprzwmc
	 * @param iswb						是否网办
	 */
	public void commonZwBeginByCksa2(int flag, Object obj, String jc,String thisNoteActivityName,String nextNoteActivityName,String masterEntityKey,
			WfBusInstanceTaskForm instance,String loginUserName,String dpm, String durationExpression,
			ResourceBundle localResource, String sprzwdm,String sprzwmc,boolean iswb,Map<String,String> map);
	
	/**
	 * 公共方法 ，经办人初审开始，共4个节点（经办人初审--处主管领导审核--委分管领导审核--经办人办结）    数据交换
	 * @param flag						标识，标识是哪个业务的
	 * @param jc						配置的简称(根据interfaceExchange.properties的配置取，如ssgd001,就取ssgd)
	 * @param thisNoteActivityName		这个节点的英文名称
	 * @param nextNoteActivityName		下个节点的英文名称
	 * @param masterEntityKey			案件ID
	 * @param instance
	 * @param loginUserName				登录用户名
	 * @param dpm						部门
	 * @param durationExpression
	 * @param localResource
	 * @param ywRqSsgdSqbForm
	 * @param sprzwdm
	 * @param sprzwmc
	 * @param iswb						是否网办
	 */
	public void commonZwBeginByJbrsl2(int flag, Object obj, String jc,String thisNoteActivityName,String nextNoteActivityName,String masterEntityKey,
			WfBusInstanceTaskForm instance,String loginUserName,String dpm, String durationExpression,
			ResourceBundle localResource, String sprzwdm,String sprzwmc,boolean iswb,Map<String,String> map);
	
	
}
